Операционная система UNIX

Метасимволы [] (квадратные скобки)



6.16.6. Метасимволы [] (квадратные скобки)

Метасимволы "[]" позволяют определить подмножество символов, которые необходимо распознавать при выполнении операции поиска или подстановки. Запись группы символов, заключенных в квадратные скобки, означает: "любой одиночный символ из указанных". Например, если "[0123456789]", это будет означать: "любая цифра". Можно записать и короче: "[0-9]". Запись двух символов, разделенных знаком минус, означает задание интервала в

лексикографической последовательности символов. Так, запись "[А-Я]" означает: "прописная русская буква", а запись: "[a-z] [a-z0-9]*" означает последовательность латинских букв и цифр, начинающуюся с буквы.

Указание в начале класса символа "^" означает "ни один из следующих символов". Например: ^[0-9] обозначает "любой символ, за исключением цифры".

Примеры. 1, $s/^[0-9]*// удаление всех цифр в начале каждой строки; /^[^(пробел)(табуляция)]/ поиск первой строки, не начинающейся символом пробела или табуляции.

Внутри класса символов могут присутствовать любые символы и, чтобы избежать путаницы, в квадратных скобках символы принципиально не имеют специального значения. Например, чтобы найти специальные символы, можно использовать команду: /[.[]/ Внутри "[...]" символ "[" не является специальным. Чтобы включить символ "]" в класс символов, нужно указать его первым.



Содержание раздела